using Unity.Mathematics;
public class Earth3DTransforms
{
    public static double metersToCentimeters;

    /**
     * The constant to multiply to transform centimeters to meters (0.01).
     */
    public static double centimetersToMeters;

    /**
     * A matrix to scale Cesium's meters up to Unreal's centimeters.
     */
    public static double4x4 scaleToUnrealWorld =>  double4x4.identity;

    // public static double4x4 scaleToUnrealWorld = new double4x4(
    // new double4(0.0001, 0.0, 0.0, 0.0),
    // new double4(0.0, 0.0001, 0.0, 0.0),
    // new double4(0.0, 0.0, 0.0001, 0.0),
    // new double4(0.0, 0.0, 0.0,1)
    // );
    /**
     * A matrix to scale down Unreal's centimeters into Cesium's meters.
     */
    public static double4x4 scaleToCesium => double4x4.identity;

    /**
     * A matrix to transform Cesium's right-handed, Z-up coordinate system to
     * Unreal's left-handed, Z-up coordinate system by inverting the Y coordinate.
     * This same transformation can also go the other way.
     */
    public static double4x4 unrealToOrFromCesium = new double4x4(
        new double4(1.0, 0.0, 0.0, 0.0),
        new double4(0.0, -1.0, 0.0, 0.0),
        new double4(0.0, 0.0, 1.0, 0.0),
        new double4(0.0, 0.0, 0.0, 1.0)
        );
}